package com.stars.easyms.mq.dto;

import com.stars.easyms.mq.enums.RedeliveryPolicy;
import com.stars.easyms.mq.core.MQListener;
import com.stars.easyms.mq.enums.DestinationType;
import lombok.Data;

import java.lang.reflect.Method;
import java.lang.reflect.Type;
import java.util.List;

/**
 * MQ信息DTO
 *
 * @author guoguifang
 * @date 2018-04-23 13:54
 * @since 1.0.0
 */
@Data
public class MQInfoDTO {

    private String key;

    private String name;

    private DestinationType destinationType;

    private String sourceSys;

    private String destSys;

    private Integer channelCount;

    private Integer channelSize;

    private Long maxFailCount;

    private RedeliveryPolicy redeliveryPolicy;

    private Long redeliveryDelay;

    private Boolean batch;

    private Boolean isDynamicKey;

    private String staticKey;

    private Boolean allowNonPersistent;

    private Class<?> clazz;

    private Method method;

    private Class<?> parameterClass;

    private Type parameterType;

    private Class<?> returnType;

    private Object instance;

    private List<MQListener> mqListenerList;
}
